Commodore 64 (C64) Forum Index
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
2021 bytes free!
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Commodore 64 (C64) Forum Index -> Help & Support
View previous topic :: View next topic  
Author Message
Crockett
Groupie in Training
Groupie in Training


Joined: 21 Nov 2009
Age: 46
Posts: 64
Location: United Kingdom

PostPosted: Sun May 26, 2013 3:51 pm    Post subject: 2021 bytes free! Reply with quote

I have just acquired (another Laughing ) bullnose 64. On switch on it shows there are only 2021 bytes free. It consistently shows this amount every time I switch on. Games won't load up and play and when I tried a game cartridge it would not function correctly at all.

I have tried a different power supply and it still shows 2021 bytes so I know that isn't the problem. If I open it up and take a look is there anything obvious I should check for? I don't have any diagnosis equipment so I can't test it that way, but I could probably swap chips over to try and identify the problem by trial and error! Wink

Any advice would be much appreciated.

L
Back to top
View user's profile Send private message
Marinermazda
Groupie in Training
Groupie in Training


Joined: 17 Sep 2012
Posts: 107

PostPosted: Sun May 26, 2013 6:11 pm    Post subject: Reply with quote

One or more of your ram chips have failed. 8 small chips might have 4164 or 8264 printed on them.
Chips are usually lower left corner of your board
Back to top
View user's profile Send private message
eslapion
Immortal Grandmaster of C64
Immortal Grandmaster of C64


Joined: 24 Jul 2006
Posts: 3559
Location: Mourrial esti de tabarnak

PostPosted: Sun May 26, 2013 6:14 pm    Post subject: Re: 2021 bytes free! Reply with quote

Crockett wrote:
I have tried a different power supply and it still shows 2021 bytes so I know that isn't the problem.

More than likely, the previous power supply permanently damaged these DRAM chips.
Back to top
View user's profile Send private message
Marinermazda
Groupie in Training
Groupie in Training


Joined: 17 Sep 2012
Posts: 107

PostPosted: Mon May 27, 2013 7:58 pm    Post subject: Reply with quote

First thing to try is leave your 64 powered on for a few minutes and put your finger on each ram chip in turn, if one is noticeably hotter then it may indicate this is the duff one.

I find the piggybacking trick has worked for me - if you get hold of a good ram chip, try sitting it on top of each suspect ram chip in turn (so each pin on the good chip touches the same pin on the one in the board). You may find that on restarting the 64 it will start to work!

Of course, if you are lucky enough to have ram chips in sockets then you are laughing - I've seen many 64s and only one had socketed RAM...
Back to top
View user's profile Send private message
Crockett
Groupie in Training
Groupie in Training


Joined: 21 Nov 2009
Age: 46
Posts: 64
Location: United Kingdom

PostPosted: Tue May 28, 2013 6:39 am    Post subject: Reply with quote

Thanks for this - I will give it a try. The original warranty sticker is still in place so I am fairly certain this machine has not been opened up before.

L
Back to top
View user's profile Send private message
Catboy
Forum Junkie
Forum Junkie


Joined: 19 Mar 2009
Posts: 495
Location: Germany

PostPosted: Tue May 28, 2013 4:52 pm    Post subject: Reply with quote

Why does someone want to "piggyback" a RAM chip on a working machine (no black screen)????

I have posted it all before... please type in and run this little program:

10 FOR I=3350 TO 40959
20 POKE I,0:A=PEEK(I)
30 IF A<>0 THEN PRINT "NOT 0, BUT ";A
40 POKE I,255:A=PEEK(I)
50 IF A<>255 THEN PRINT "NOT 255, BUT ";A
60 NEXT

and tell us the message(s) it outputs. The difference between the "right" and the "wrong" value will most probably be the same.

Then let's take a look at the schematics to see which chip is responsible for the wrong bit.

-Catboy
Back to top
View user's profile Send private message
Marinermazda
Groupie in Training
Groupie in Training


Joined: 17 Sep 2012
Posts: 107

PostPosted: Tue May 28, 2013 5:16 pm    Post subject: Reply with quote

Piggybacking chips is more fun than typing programs in and looking at schematics (to me anyway)

Must be my kinaesthetic learning style

Smile
Back to top
View user's profile Send private message
Crockett
Groupie in Training
Groupie in Training


Joined: 21 Nov 2009
Age: 46
Posts: 64
Location: United Kingdom

PostPosted: Tue May 28, 2013 7:06 pm    Post subject: Reply with quote

Catboy wrote:
Why does someone want to "piggyback" a RAM chip on a working machine (no black screen)????

I have posted it all before... please type in and run this little program:

10 FOR I=3350 TO 40959
20 POKE I,0:A=PEEK(I)
30 IF A<>0 THEN PRINT "NOT 0, BUT ";A
40 POKE I,255:A=PEEK(I)
50 IF A<>255 THEN PRINT "NOT 255, BUT ";A
60 NEXT

and tell us the message(s) it outputs. The difference between the "right" and the "wrong" value will most probably be the same.

Then let's take a look at the schematics to see which chip is responsible for the wrong bit.

-Catboy

Thank you for that. Here is the result:

Back to top
View user's profile Send private message
encore
C64 Enthusiast
C64 Enthusiast


Joined: 02 Jun 2010
Posts: 888
Location: .se

PostPosted: Tue May 28, 2013 7:17 pm    Post subject: Reply with quote

Catboy: Doesn't one want to know the memoryposition (in order to find out which chip it is)?

Like:
Code:
10 fori=3350to40959
20 pokei,0:a=peek(i)
30 ifa<>0then?i;"is not 0, but";a
40 pokei,255:a=peek(i)
50 ifa<>255then?i;"is not 255, but";a
60 next
Back to top
View user's profile Send private message Visit poster's website
Catboy
Forum Junkie
Forum Junkie


Joined: 19 Mar 2009
Posts: 495
Location: Germany

PostPosted: Tue May 28, 2013 7:59 pm    Post subject: Reply with quote

@encore: No, because each RAM chip (on old breadboxes with 8 chips) only handles one bit of all memory addresses. To find a faulty chip, you only need to know which bit is bad.

@Crockett: Value 16 means that bit#4 is permanently set when it actually shouldn't be. Bit#4 is handled by U23.


-Catboy
Back to top
View user's profile Send private message
mistermsk
Immortal Grandmaster of C64
Immortal Grandmaster of C64


Joined: 29 Jun 2009
Age: 44
Posts: 4247
Location: Baltimore,MD USA Favorite Games: Ultima ][, Wasteland

PostPosted: Tue May 28, 2013 8:17 pm    Post subject: Reply with quote

@Catboy

Since what you posted is a little over my head at the moment, and possibly others. Can you posted a quick chart or something that show an error on each chip? Such as Bit less then this equal this chip, etc...
_________________
HelpingEverywRongPersonEliminateStupidness!
Back to top
View user's profile Send private message Visit poster's website
encore
C64 Enthusiast
C64 Enthusiast


Joined: 02 Jun 2010
Posts: 888
Location: .se

PostPosted: Tue May 28, 2013 8:20 pm    Post subject: Reply with quote

Aha, makes sense.
Back to top
View user's profile Send private message Visit poster's website
Catboy
Forum Junkie
Forum Junkie


Joined: 19 Mar 2009
Posts: 495
Location: Germany

PostPosted: Wed May 29, 2013 4:44 pm    Post subject: Reply with quote

mistermsk wrote:
@Catboy

Since what you posted is a little over my head at the moment, and possibly others. Can you posted a quick chart or something that show an error on each chip? Such as Bit less then this equal this chip, etc...

Of course...

My program just writes 0 and 255 into memory locations and checks if they read out correctly afterwards. A "bad bit" will lead to wrong numbers:

- stuck SET bits will lead to numbers being greater than 0
- stuck CLEARED bits will lead to numbers being smaller than 255

To find out which bit is bad, just calculate the difference between the "right" and the "wrong" value displayed.

"NOT 0, BUT 16" or "NOT 255, BUT 239", for example, are both off by 16.
16 represents bit#4 on binary numbers, so we have to see which RAM chip refers to that bit.

Here's a chart for you:

Code:

Bit#  Value  Bad chip (8 RAMs)    Bad chip (2 RAMs)
 0      1         U21                  U10
 1      2         U09                  U10
 2      4         U22                  U10
 3      8         U10                  U10
 4     16         U23                  U11
 5     32         U11                  U11
 6     64         U24                  U11
 7    128         U12                  U11



On our above example, we'll have to replace U23 on a breadbox (which has 8 single RAM chips) or U11 in case we have a C64C with just 2 DRAMs on board.

Note that you may have more than one wrong bit at the same time. If the "wrong" value is 18, for example, then this points to U9 and U23 being faulty (or both U10 & U11, depending on your board).

I hope this explains it all.

-Catboy
Back to top
View user's profile Send private message
dink
Grandmaster of C64
Grandmaster of C64


Joined: 03 Jan 2012
Posts: 2125
Location: detroit

PostPosted: Wed May 29, 2013 6:36 pm    Post subject: Reply with quote

Catboy, I always wondered about that, thanks for the technical explanation, code & chart Smile
Back to top
View user's profile Send private message
Marinermazda
Groupie in Training
Groupie in Training


Joined: 17 Sep 2012
Posts: 107

PostPosted: Fri Jan 31, 2014 9:13 am    Post subject: Reply with quote

Catboy, I've got a board that gives a similarly low amount of RAM at boot, but that test program doesn't throw up any bit errors

Any ideas?
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Commodore 64 (C64) Forum Index -> Help & Support All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Tip: Get C64 Forever for super-comfy C64 emulation with pre-installed games, demos and other goodies!